Signal detection and discrimination using waveform peak factor

ABSTRACT

Apparatus and method for detecting and discriminating among various signals indicative of progress while making a telephone connection. A particular waveform parameter known as peak factor is advantageously employed in a call progress analyzer. The illustrative call progress analyzer uses the average magnitude peak factor (ratio of the peak of the waveform to the average of the absolute value of the waveform) to distinguish among single-tone signals (e.g., special service information tones), double-tone signals (e.g., dial tone, audible ring, and busy), and speech. Waveform ON and OFF times (duration above and below an energy threshold) are combined with signal-type determinations (made using peak factor) to automatically determine the status of a call.

FIELD OF THE INVENTION

The present invention relates to signal processing apparatus and methodsuseful in detecting and discriminating among various types of electronicsignals, especially signals indicative of the progress of calls intelephone systems.

BACKGROUND

Telephone systems were originally developed for use by people. A personwould dial the desired number, then determine whether the called partyanswered by listening to the line. The telephone system provides varioussignals to aid the calling party in determining the progress of the callthey are placing. These include dial tone, audible ring (the ringindication heard by the calling party), busy signals, and specialservice information tones (SSIT) (an SSIT is typically followed by arecorded voice announcement indicating such conditions as all circuitsare busy, the dialed number is no longer in service, etc.).

Increasingly, various types of apparatus are working with people intheir use of the telephone system, and in some cases automated systemsare placing calls independent of any person's supervision.

The following example illustrates the need for automatic call progressanalysis. It is typical for voice message systems to require thatmessage recipients call the voice message system to receive theirmessages. Sometimes it is desirable for a voice message system to callthe recipient, rather than wait for the recipient to call the system. Insuch situations it is necessary for the voice message system to performcall progress analysis, in order to reliably deliver voice messages.

Automatic call progress analysis can also be useful when a computer isplacing a call for a person. Someone might select a number to be dialedfrom a computer-based telephone list. The computer could place the calland indicate to the person when the telephone has been answered withoutthe person needing to listen to the intervening telephone line activity.

In order for a machine to be able to reliably place calls, it is usefulfor the machine to be able to track a call's progress by recognizing thevarious signals a calling party receives. It is important to be able todetect and identify the various progress tones (e.g., dial tone, ring,busy, SSIT) and to detect speech and accurately distinguish it from theother signals indicating call progress (i.e., the progress tones).

Dialtone, ring, and busy signals are normally double-tone signals, i.e.,each is the sum of two tones. For example, a dial tone typically is thesum of a 350 Hz tone and a 440 Hz tone; audible ring typically is thesum of a 440 Hz tone and a 480 Hz tone. SSITs are single-tone signalslasting for about one second in which the tone frequency is changed indiscrete steps after each one-third of a second; an SSIT is normallyfollowed by speech (in the form of a recorded announcement).

Speech is both one of the most important signals to recognize, and yetis one of the most difficult signals for a machine to recognize. Speechis difficult for a machine to recognize because of the great variabilityin speech waveforms. It is important to distinguish speech from theother call progress signals because the presence of speech typicallyindicates the end of a call delivery sequence: the presence of speechnormally indicates that the phone has been answered and the call shouldbe "delivered" (a connection to the called party has been completed andthe call progress analysis portion of the system passes control to thatportion of the system that will conduct the substance of the call),unless the speech follows an SSIT, which is also the end of the calldelivery sequence, but indicates that the call attempt should beterminated.

One class of approaches to detection and discrimination of progresssignals involves analysis of the cadence of the received signals. Thisstarts by summarizing the received signals as an alternating series ofsignal-energy-present and signal-energy-absent intervals. The patternsof the durations of the signal-on intervals and the durations of theintervening signal-off intervals can often be used to distinguish amongthe various types of progress tones. This approach deals poorly withspeech because speech can occur with highly varied timing patterns,including patterns that match those of progress tones. Although theirregularity of speech is a useful clue, this irregularity may onlyreveal itself after an unacceptably long period of time. Timing-baseddetection schemes also have difficulty dealing with nonstandard progresstones. For example, ring signals can take on a wide variety of differentpatterns depending on the telephone exchange generating the ring. Also,actual signals may vary in their timing substantially from the standard,due to equipment variability.

Another class of approaches involves the use of frequency measurement.In these systems, the detection/discrimination system has either a setof band-pass filters or is capable of determining the frequency spectrumof the received signal (i.e., by performing an FFT computation). Asprogress tones generally have characteristic tone structure, frequencyanalysis of the waveform received by the caller can extract a great dealof information about call progress. Again, speech can creatediscrimination problems because the frequency content of speech ishighly variable. And, there is variability in the frequency informationdue to differences between telephone systems and the state of particulartelephone equipment. In addition, the needed filters can be expensiveand the FFT is computationally intensive.

Both cadence-based and frequency-based approaches tend to be limited bythe lack of uniformity among and within telephone systems. There are nouniversally accepted standards: there are differences between oldersystems and newer systems; there are differences between systems indifferent geographic areas. The effect of even those standards that doexist is qualified by the fact that the standards are generally onlyrecommendations and compliance is not mandated.

Therefore, it is an object of the present invention to detect anddiscriminate among call progress signals with a high degree of accuracydespite variations that exist among and within telephone systems.

A further object is to reliably distinguish speech from other callprogress signals.

Further, it is an object to provide such detection and discriminationusing a relatively modest amount of computing resources.

SUMMARY OF THE INVENTION

The present invention uses a waveform characteristic called peak factorto aid in the detection of and discrimination among certain types ofsignals. Peak factor is the ratio of the peak of the waveform to ameasure of the signal level of the waveform; average magnitude and RMSare two useful measures of waveform signal level. Because peak factor isa normalized measure, it is basically independent of signal level. Peakfactor ranges are identified for each of several signal types.Signal-type determinations are made by measuring the peak factor of aportion of a waveform and comparing the measured peak factor with thepredetermined ranges. Presence of the measured peak factor within aparticular range is an indication that a signal of the correspondingsignal-type is represented by the analyzed portion of waveform.

Peak factor differs for signals having differing numbers of tones. Ofparticular interest in call progress analysis are the following types ofsignals: single-tones, double-tones, and speech. Non-overlapping peakfactor ranges are specifically identified for these signal types.

Peak factor determinations are made on sequential portions of thewaveform being analyzed. These individual measurements are thenlogically combined to arrive at signal-type determinations that are moreglobal and more accurate.

Peak factor analysis can be used in conjunction with other waveforminformation, such as that obtained by cadence analysis, to arrive at amore precise signal-type determination than could have been achievedwith either form of analysis alone. Specifically, energy thresholdanalysis (in which a measure of waveform signal level is compared to athreshold) is used to determine a series of signal-ON and signal-OFFtime intervals. A plurality of peak-factor-based signal-typedeterminations are made for each ON interval. This plurality is thenlogically combined to produce a single signal-type determination foreach ON interval. The ON interval signal types and the ON and OFFinterval times are then logically combined to make determinations of thepresence of the various logical signals that a calling party may expectto receive, such as dial tone, busy signal, audible ring, SSIT, andspeech.

In deciding whether to deliver a telephone call, it is important todistinguish speech from call progession tones and to distinguish SSITsfrom the other progression tones. These three categories of signals eachhave peak factors, even considering such factors as additive noise,harmonic distortion, and frequency distortion, that fall innon-overlapping ranges. Thus, peak factor analysis is particularlyuseful in systems making automatic call delivery decisions.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention is pointed out with particularity in the appended claims.The above and other advantages of the invention may be better understoodby referring to the following detailed description in conjunction withthe drawing, in which:

FIG. 1 is a block diagram of a computer and various attached devicesarranged to employ the present invention;

FIG. 2 is a block diagram of the major functions performed by theprogrammable signal processor (PSP) in the computer system of FIG. 1;

FIG. 3 is a block diagram detailing the call progress analyzer of FIG.2;

FIG. 4A shows the general arrangement of a table of signal-type data andinterval-duration data used by the progress analysis decision logic ofFIG. 3; and

FIGS. 4B, 4C, 4D, and 4E are specific examples of how the table of FIG.4A might look in certain situations.

DETAILED DESCRIPTION OF AN ILLUSTRATIVE EMBODIMENT OUTLINE OF DETAILEDDESCRIPTION

I. CALL PROGRESS ANALYSIS SYSTEM

A. PHYSICAL SYSTEM (FIG. 1)

B. OVERALL SIGNAL PROCESSING (FIG. 2)

C. CALL PROGRESS ANALYSIS (FIG. 3)

1. ENERGY MEASUREMENT

2. INTERVAL DETERMINATION AND GLITCH REMOVAL

3. PEAK FACTOR MEASUREMENT AND RANGE DETERMINATION

4. PEAK FACTOR DECISION LOGIC

5. CALL STATUS CONDITIONS REPORTED

6. PROGRESS ANALYSIS DECISION LOGIC (FIG. 4)

II. THEORETICAL CONSIDERATIONS

A. SYMBOLS AND TERMINOLOGY

B. "IDEAL" PEAK FACTORS

1. SINGLE-TONE SIGNALS

2. DOUBLE-TONE SIGNALS

3. SPEECH

C. VARIATIONS FROM "IDEAL" PEAK FACTOR

1. ADDITIVE NOISE

2. HARMONIC DISTORTION

3. UNEQUAL TONE AMPLITUDES

D. MEASUREMENT INTERVAL

E. AVERAGE MAGNITUDE RATHER THAN RMS

1. RELATION BETWEEN AVM AND RMS

2. AVM PEAK FACTOR RANGES CONSIDERING ADDITIVE NOISE

I. CALL PROGRESS ANALYSIS SYSTEM

I.A. PHYSICAL SYSTEM (FIG. 1)

Referring to FIG. 1, a computer 10 includes a programmable signalprocessor subsystem (PSP) 12, with which it communicates via aPSP/computer interface 14. The computer includes such conventionalcomponents as a processor, memory, and mass storage and is connected toa video display monitor 16 and a keyboard 18.

The computer 10 connects via digital control lines 20 to a voiceattachment 22. The PSP 12 in the computer 10 connects via analog lines24 to the voice attachment 22. The voice attachment 22, in response tosignals on control lines 20, controls connection of a telephone 26, andthe PSP 12 to a telephone line 28. The voice attachment 22 includes a2-wire to 4-wire convertor (e.g., a hybrid coil) so that analog lines 24include separate lines for carrying incoming and outgoing signals, andan automatic gain control (AGC).

The PSP 12 includes circuits that adapt it for efficient processing ofdigitized representations of waveforms. These include a TexasInstruments TMS32010 signal processor 40, an Intel 8089 I/O processor42, a TP3050 Coder/Decoder (codec) 44, and memory 46.

The specialized instruction set of the signal processor 40 is designedto facilitate the types of numerically intensive operations useful indigital signal processing. Some instructions for the signal processor 40and the I/O processor 42 permanently resident in a read-only portion ofthe memory 46, and other instructions are downloaded from the computer10 into a read/write portion of the memory 46.

The codec 44 converts an analog waveform from analog lines 24 to 8-bitmu-law digital samples at the rate of 7000 samples/second. The codec 44also converts digital samples into an analog waveform to be placed onanalog lines 24.

I.B. OVERALL SIGNAL PROCESSING (FIG. 2)

FIG. 2 shows the primary functions performed by PSP 12. The codec 44performs both as an analog-to-digital (A/D) convertor 60 and as adigital-to-analog (D/A) convertor 62. The I/O processor 42 buffersincoming waveform samples and functions as a mu-law-to-linear convertor64. The signal processor 40 functions as a call progress analyzer 68, asa tone generator 70 for generating the DTMF tones used in dialing, andas a linear-to-mu-law convertor 66 to prepare the waveform samplescreated by the tone generator 70 for D/A conversion by the codec 44.Thus, despite the fact that the codec 44 uses a non-linear conversionlaw, the signal processor 40 can work with samples that are linearrepresentations of waveforms on analog lines 24.

As described above, lines 24 carry analog signals. The A/D 60 passes8-bit mu-law encoded samples to convertor 64. Correspondingly, theconvertor 66 passes 8-bit mu-law samples to the D/A 62. The convertor 64provides 14-bit linear encoded waveform samples to the call progressanalyzer 68. The tone generator 70 provides 14-bit linear samples to theconvertor 66. The call progress analyzer 68 provides call statusindications, which are communicated via interface 14 to computer 10. Thetone generator 70 receives dialing commands from computer 10 viainterface 14.

The I/O processor 42 accomplishes the conversion from mu-law to linearby table-lookup. The signal processor 40 generates the DTMF dialingtones by use of second order recursive difference equations.

I.C. CALL PROGRESS ANALYSIS (FIG. 3)

FIG. 3 shows the processing operations performed by the call progressanalyzer 68.

Waveform energy is measured by a means 80 and compared by a means 82with an energy threshold. The durations which the waveform is above orbelow the energy threshold are determined by a means 84. The resultingseries of ON (above threshold) and OFF (below threshold) times is thenprovided to the progress analysis decision logic 86.

Waveform peak factor is measured by a means 88 and compared by a means90 with predetermined peak factor ranges for the several signal types(single-tone, double-tone, and speech). The series of signal-typedeterminations from the range comparator 90 are provided to the peakfactor decision logic 92, which combines the various signal-typedeterminations that occur within each ON or OFF interval and makes asingle signal-type determination for each ON and each OFF interval. Thesignal-type determinations for the ON and OFF intervals are provided tothe progress analysis decision logic 86, which uses these determinationsalong with the interval duration determinations to determine callstatus. The resulting indications of call status are then made availablevia interface 14 to the computer 10.

I.C.1. ENERGY MEASUREMENT

Energy measurement 80 is accomplished by low pass filtering themagnitude of the waveform. The magnitudes of the samples (i.e., thesample values with the sign removed) are the input to a first orderrecursive difference equation. The output of this computation is aseries of estimates of the energy level of the waveform.

The energy threshold used in the comparison 82 is not a single fixedvalue, but is switched among three values: 8, 16 and 145. When energymeasurement begins, the threshold is set to 16. If a signal occurs whichis identified as ring, then the threshold is dropped to 8. This aids inthe detection of speech signals, which can have a lower energy levelthan the preceding ring signal. If the energy measurement rises above145, then the threshold is set to 145. This reduces the likelihood ofprocessing a spike as speech: a spike is likely to quickly fall belowthe 145 threshold; speech is likely to remain above the 145 thresholdsignificantly longer.

I.C.2. INTERVAL DETERMINATION AND GLITCH REMOVAL

The time interval between the time when the energy measurement goesabove the energy threshold and when the energy measurement next goesbelow the energy threshold is an ON interval; the time interval betweenwhen the energy measurement goes below the energy threshold and when theenergy measurement next goes above the energy threshold is an OFFinterval.

The definitions in the previous paragraph of ON and OFF intervals arequalified by the fact that certain logic is provided in the timemeasurement means 84 to remove from use in the time measurement processthose energy threshold transitions attributed to "glitches", briefbursts of energy or brief energy dropouts.

The glitch rejection logic rejects bursts of energy lasting less thanabout 200 msec. Transient signals of short duration and having anexponentially decaying tone-like structure have been observed to occurfrequently during the establishment of a telephone connection both priorto and after the phone has been answered. Those that occur prior toanswer are usually due to connections being made in telephone switchingequipment as the circuit is being established. Those that occur afterthe phone has been answered are usually the result of hook switchtransients. These switching transients exhibit high peak factors, andcan fall into the speech peak factor range. These signals are removedfrom consideration as speech or other signals on the basis of theirshort duration. The glitch removal logic combines an ON time of lessthan 200 msec with the OFF times of the two adjacent OFF intervals toform a single OFF interval, as if to "ride" across the glitch.

The glitch rejection logic removes short OFF times (dropouts) by asimilar mechanism. Dropouts can occur during speech due to the widedynamic range of speech, i.e., the speech may appear to go away becauseit has momentarily dropped below the energy threshold. OFF times lessthan 100 msec are combined with the adjacent ON times to form a singleON interval.

If a non-transient interval (an interval preceded and followed by energythreshold transitions not attributed to "glitches") is not found withina certain time period, a signal-timeout indication is provided by thetime measurement logic 84 to the progress analysis decision logic 86.Following dialing, the time period is set to 45 seconds; thereafter thetime period is set to 5 seconds.

The result of the energy measurement 80, energy threshold comparison 82,and time measurement 84 is a series of alternating ON times and OFFtimes. These ON times and OFF times are then provided to the progressanalysis decision logic 86.

I.C.3. PEAK FACTOR MEASUREMENT AND RANGE DETERMINATION

Waveform samples are provided by the mu-law-to-linear convertor 64 tothe peak factor measurement means 88 in blocks of 256 samples. Peakfactor is not determined on a sample-by-sample basis; instead, a peakfactor determination is made for each succeeding block of 256 samples.The interval corresponding to a block of 256 samples is called ameasurement interval.

For each measurement interval, the peak factor measurement means 88 andthe peak factor range comparator 90 combine to make a signal-typedetermination. The peak factor decision logic 92 then combines thedeterminations for the many measurement intervals that occur within eachON interval to make a single signal-type determination for each ONinterval. No signal-type determination is made for an OFF interval as anOFF interval by its very nature concludes there is no signal.

The peak factor for a measurement interval is the ratio of the absolutevalue of the largest sample in the interval to the average of themagnitudes of the samples in the interval.

The peak factor range comparator 90 makes signal-type determinations bydetermining whether the peak factor for a measurement interval fallswithin one of three ranges as follows:

1.26-2.00: single-tone

2.34-2.71: double-tone

3.50-16.80: speech

If the peak factor does not fall within one of the ranges, then a NULLsignal-type indication is provided for that measurement interval.

The ranges used in this illustrative embodiment are not contiguous.Alternatively, ranges could be chosen that are contiguous. For example,two thresholds could be used to define ranges for single-tones,double-tones, and speech: a first threshold could be used to separatesingle-tones from double-tones; a second threshold could be used toseparate double-tones from speech. In such case, the single-tone rangewould be everything below the first threshold, the double-tone rangewould be everything between the first and second thresholds, and thespeech range would be everything above the second threshold.

Although the above-listed ranges work well, further optimization may bepossible. These ranges were determined by:

determining "ideal" peak factors using theoretical analysis andexperimentation;

expanding ranges around these ideals in light of general understandingof how the measured peak factor is likely to vary from the ideal; and

measuring and theoretical modeling of the peak factors of variouswaveforms under non-ideal conditions (e.g., additive noise, harmonicdistortion).

Various considerations in determination of peak factor ranges arefurther discussed below.

Conceptually the comparisons performed for each range result in thedetermination of whether the following inequality is true:

    LOWER RANGE BOUNDARY PEAK FACTOR UPPER RANGE BOUNDARY

where

PEAK FACTOR=PEAK/AVERAGE MAGNITUDE

AVERAGE MAGNITUDE=SUM OF SAMPLE MAGNITUDES/#SAMPLES

#SAMPLES=256

PEAK=MAXIMUM SAMPLE MAGNITUDE

SAMPLE MAGNITUDE=SAMPLE VALUE IGNORING THE SIGN

Although conceptually the peak factor is measured by the means 88 andthen it is compared with the ranges by the means 90, in practice thecomputation of the peak factor and the comparison of the peak factorwith the ranges are merged: the PEAK is compared with the product of theAVERAGE MAGNITUDE and the range boundaries as follows:

    AVERAGE MAGNITUDE*LOWER RANGE BOUNDARY  PEAK

and

    PEAK  AVERAGE MAGNITUDE*UPPER RANGE BOUNDARY

This makes it possible to perform a multiply instead a morecomputationally time consuming divide operation. In other words, thePEAK is compared with scaled versions of the SUM OF SAMPLE MAGNITUDES.The scale factors are determined by the range boundaries and the#SAMPLES; these are constant, and therefore, the scale factors need becomputed only once, and need not be computed each time the peak factoris computed.

In summary, the peak factor measurement means 88 and the peak factorrange comparison 90 are accomplished by identifying the peak value,summing the sample magnitudes, multiplying to obtain scaled forms of thesum, and comparing the peak with the scaled forms of the sum.

I.C.4. PEAK FACTOR DECISION LOGIC

The waveforms being measured in any actual system are corrupted by noiseand various types of distortion. In addition, speech isnon-deterministic and only approximately characterized statistically.Thus, determinations of signal type are not perfectly accurate. Peakfactor decision logic 92 is used to combine the signal-typedeterminations for individual measurement intervals to makedeterminations of the signal type of an overall ON interval with greateraccuracy than that of any single measurement interval.

The peak factor decision logic 92 includes three counters: a single-tonecounter 94, a double-tone counter 96, and a speech counter 98. Eachcounter counts (with minor modification discussed below) the number ofmeasurement intervals for which the peak factor falls within the rangecorresponding to that counter's signal type.

At the beginning of an ON interval all three counters 94, 96, and 98 areset to zero. The double-tone counter 96 and speech counter 98 are alsoselectively set to zero whenever one of the other two counters reaches avalue of 4 for the first time; the single-tone counter 94 is not resetwhen one of the other counters reaches 4. This counter logic tends tofavor the peak factor measurements later in the ON interval over thosethat occur at the outset of the ON interval. This is desirable becausesignal level is often low at the onset of an ON interval and thereforeearly peak factor measurements are likely to be less reliable than aremeasurements later in the ON interval.

The single-tone counter 94 is treated differently so as to favordetection of an SSIT signal. It is especially important to detect theSSIT signal because failure to do so will result in the call statusbeing reported as CALL ANSWERED, when in fact the call should beaborted. The gap between an SSIT signal and the following recordedmessage can be quite small. In extreme cases, it will be considered tobe a "glitch" and the SSIT will be combined with a portion of thefollowing speech in one ON interval. In such a situation, if thereset-on-four rule was used to reset the single-tone counter 94, aslittle as four measurement intervals of speech occurring in the SSIT ONinterval would result in failure to detect the SSIT.

Observations of signal type are counted for each ON interval. At the endof each ON interval, the signal-type with the largest counter value isdetermined by the peak factor decision logic 92 to be the signal-typefor that interval.

I.C.5. CALL STATUS CONDITIONS REPORTED

The call status conditions reported by the illustrative system aresummarized as follows:

(I) DIAL TONE PRESENT

(F) DIAL TONE ABSENT

(I) OUTPULSING A DIGIT

(F) DIAL TONE UNBREAKABLE

(I) MONITORING PROGRESS TONES

(I) PHONE RINGING

(F) CALL ANSWERED

(F) BUSY

(F) FAST BUSY

(F) RING NO ANSWER

(F) SSIT

(F) CALL PROGRESSION TIMEOUT

Those conditions which are the final status of a call are indicated by(F); intermediate status conditions are indicated by (I). I.C.6.PROGRESS ANALYSIS DECISION LOGIC (FIG. 4) The determination of thesignal types of the ON intervals in combination with the durations ofthe ON intervals and the OFF intervals are used by the progress analysisdecision logic 68 in the determination of the status of a call. Thisinformation is stored in a detector data table 100 (within the memory46) with the general form shown in FIG. 4A. The data table 100 can storesignal type and duration for each of the eight most recent ON/OFFintervals. The table 100 includes eight signal-type entries (S_(j),S_(j-1), S_(j-2), S_(j-3), S_(j-4), S_(j-5), S_(j-6), and S_(j-7)) andeight ON/OFF interval duration entries (T_(j), T_(j-1), T_(j-2),T_(j-3), T_(j-4), T_(j-5), T_(j-6), and T_(j-7)). Each signal-type entryhas one or the logical values `0`, `1T`, `2T`, and `SP`, which indicateno signal-type determination, single-tone, double-tone, and speech,respectively. The signal-type indicated for all OFF intervals is `0`.Each duration entry contains an indication of the length of thecorresponding ON or OFF interval. The leftmost signal-type entry 102contains the signal type of the most recent ON or OFF interval; theleftmost duration entry 104 contains the duration of the most recent ONor OFF interval. When data for a new ON/OFF interval has been determinedthe entries in the data table 100 are shifted to the right and the newdata is added to the leftmost entries 102 and 104. FIG. 4B shows thedata table 100 as it might look after the occurrence of a specialservice information tone followed by some speech. FIG. 4C shows the datatable 100 as it might look after two rings. FIG. 4D shows the data table100 as it might look during fast busy. FIG. 4E shows the data table 100as it might look during prolonged ring. The progress analysis decisionlogic 86 also uses three flags in its operation; the first is set by thetime measurement means 84 and the other two are set by the progressanalysis decision logic 86:

SIGNAL-TIMEOUT starts at `0` and is set to `1` to indicate that acertain time has passed without any ON/OFF intervals occurring exceptthose attributed to "glitches" (see the above discussion of the timemeasurement means 84);

FIRST is initialized to `1` and is set to `0` when the first table entryhas been processed; and

RING-FLAG indicates that a ring has previously been detected.

The progress analysis decision logic 86 monitors the leftmostsignal-type entry 102 and the three flags, SIGNAL-TIMEOUT, FIRST, andRING-FLAG as follows.

A `0` in the leftmost signal-type entry 102 together with a non-zeroduration entry 104 indicates a silence interval was present. IfSIGNAL-TIMEOUT and FIRST are both set to `1`, then the line has beenmonitored for 45 seconds after dialing with no sign of activity; thestatus reported in this case is CALL PROGRESSION TIMEOUT. IfSIGNAL-TIMEOUT and RING-FLAG are both set to `1`, then the telephone wasringing, but no new activity has been detected for 5 seconds; it isassumed that the telephone has been answered and the speech is below theenergy threshold; CALL ANSWERED is reported. If SIGNAL-TIMEOUT is `0`then monitoring resumes.

A `1T` in the leftmost signal-type entry 102 indicates a single-tonesignal was present. No further action is taken at this time, andmonitoring resumes.

A `2T` in the leftmost signal-type entry 102 indicates some type ofdouble-tone signal was present. If SIGNAL-TIMEOUT and FIRST both are setto `1` then DIAL TONE UNBREAKABLE is reported. When the firstdouble-tone signal of duration 0.8 to 2.4 seconds is encountered,RING-FLAG is set to `1` and the energy threshold is lowered to 8. Whenthe table contains four double-tone entries, checks are made for busy,fast busy, and double ring: If all the table entry durations are 0.4 to0.6 seconds, status is reported as BUSY; if all the durations are 0.2 to0.3 seconds, status is reported as FAST BUSY; if some of the durationsfall within the busy range while others do not, it is assumed thatdouble ring or and unknown ring pattern has occurred, and the number ofmaximum allowable rings is doubled from six to twelve and monitoringresumes. A counter 99 keeps track of the number of double-tone ONintervals. If the number of double-tones reaches the maximum allowablerings, the status is reported as RING NO ANSWER.

A `SP` in the leftmost signal-type entry 102 indicates speech waspresent. If the signal-type entry for the previous ON interval 106 is`1T`, then the status is reported as SSIT. If the signal-type entry forthe previous ON interval 106 is `2T`, then the status is reported asCALL ANSWERED. If the signal-type entry for the previous ON interval 106is `0`, then it is assumed that the telephone was answered before ringback occurred and the status is reported as CALL ANSWERED.

The programmable signal processor 12 can report several other statusconditions. When the PSP has been commanded to wait for a dial tonebefore dialing, the status DIAL TONE ABSENT is reported if a double-tonesignal is not detected within some predetermined time period. All theabove-described status conditions are the final result of the call.Several intermediate status conditions can also be reported: MONITORINGPROGRESS TONES, DIAL TONE PRESENT, PHONE RINGING, and OUTPULSING ADIGIT.

II. THEORETICAL CONSIDERATIONS

II.A. SYMBOLS AND TERMINOLOGY

These symbols will be used in the following discussion:

PF=peak factor

PF_(irms) =ideal RMS-based peak factor

PF_(rms) =measured RMS-based peak factor

PF_(avm) =measured average-magnitude-based peak factor

1T=single-tone signal

2T=double-tone signal

SP=speech signal

SQRT(X)=square root of X

ABS(X)=absolute value of X (i.e., throws away the sign of X)

AVG(X)=average of X

AVM(X)=average magnitude =AVG(ABS(X))

RMS(X)=root mean square =SQRT(AVG(X²))

NSR=noise-to-signal ratio

PI=3.14159

II.B. "IDEAL" PEAK FACTORS

The RMS-based peak factor is the most analytically tractable and isexpressed as

    PF.sub.irms =PEAK/RMS

where PEAK is the most extreme value of the waveform (i.e., the maximumof the absolute value of the waveform) over some time interval, and RMSis the root mean square of the waveform computed over the same interval.

II.B.1. SINGLE-TONE SIGNALS

An ideal single-tone waveform can be expressed as

    A*SIN(2*PI*FREQUENCY*TIME+PHASE ANGLE)

It is well known that the RMS value of such a waveform is

    A/(SQRT(2 ))

and the peak value of such a waveform is

    A

Thus, the peak factor for a single-tone waveform is

    PF.sub.irms =SQRT(2)

or about 1.414. Because SSITs are single-tone signals, they have anideal peak factor of about 1.41, which is independent of tone frequency.

II.B.2. DOUBLE-TONE SIGNALS

For a waveform that is the sum of N tones, the peak factor can bederived as follows. The peak value of the sum of N tones each of peakamplitude A will occur when the peaks of the individual tones coincideand will therefore be

    PEAK=N*A

The RMS value of the sum of N tones each of amplitude A is

    A*SQRT(N/2)

Thus, the peak factor for the sum of N equal amplitude tones is

    PF.sub.irms =SQRT(2*N)

Certain assumptions are implicit in the above derivation. The PEAK canactually be less than the sum of the PEAK values of the individualtones; this will occur if the relative frequencies and phases of thetones are such that there is no time during the measurement intervalthat the peaks of the individual tones coincide. Also, the measurementinterval must be long enough so that the cross-products of the differenttones each average to zero in order to obtain the RMS value above.Nonetheless, the above-derived equation for the peak factor is still auseful guide.

Dial tone, audible ring, busy, and fast busy share a common structure:each consists of the sum of two equal amplitude tones at differentfrequencies. Using the above-listed equation for the peak factor of thesum of tones, the ideal peak factor for these double-tone signals is

    PF.sub.irms =SQRT(2*2)=2.00

II.B.3 SPEECH

Experimental observations, supported by theoretical studies, have shownthat the peak factor of speech typically occurs in the range 3.5 to 12,is almost always greater than 3, and a usual value is about 5.6.

It is important to note that not only do single-tone and double-tonesignals have differing peak factors, but that these peak factors falloutside of the range of speech peak factors.

II.C. VARIATIONS FROM "IDEAL" PEAK FACTOR

For various reasons, the peak factor actually measured for real worldsignals will differ from the "ideal".

II.C.1. ADDITIVE NOISE

Additive wideband noise tends to increase the measured peak factor fromthe ideal. If it is assumed that the noise-to-signal ratio (NSR) is muchless than 1.0 and that the noise fluctuates much more rapidly than thesignal, then an approximate theoretical relationship between noise leveland peak factor can be derived.

A peak estimator for Gaussian noise is given by

    B*RMS(noise)

where B is the number of standard deviations beyond which there is anegligible probability of occurrence; B=4 is assumed for the numericexamples below.

The measured peak of noise plus signal will be less than about

    PEAK(signal)+B*RMS(noise)

and (assuming the signal is much larger than the noise) the measuredpeak factor will therefore be less than about

    (PEAK(signal)/RMS(signal))+(B*RMS(noise)/RMS(signal))

in other words

    PF.sub.irms PF.sub.rms (PF.sub.irms +B*NSR)

A somewhat more precise analysis yields the following:

    PF.sub.irms PF.sub.rms (PF.sub.irms +B*NSR)/(SQRT(1+NSR.sup.2))

In a typical telephone noise environment the noise-to-signal ratio isbetter than -25dB (i.e., NSR=0.056). At this noise level, the aboveanalysis indicates that the measured peak factor for single-tonesignals, double-tone signals, and speech would fall within the followingranges:

    ______________________________________                                        1.41          PF.sub.rms (1T)                                                                         1.64                                                  2.00          PF.sub.rms (2T)                                                                         2.22                                                  3.50          PF.sub.rms (SP)                                                                         12.21                                                 ______________________________________                                    

II.C.2. HARMONIC DISTORTION

Harmonic distortion can add second and higher order harmonics to theindividual tone or tones of a transmitted signal. This results in areceived signal that has a peak factor that differs from the peak factorof the transmitted signal. For example, 10% second harmonic distortionof a single-tone signal (e.g., SSIT) increases the RMS peak factor fromthe ideal (about 1.41) to 1.58. As discussed above, additive noise alsotends to increase the measured peak factor. The combination of both -25dB noise and 10% harmonic distortion increases the peak factor of asingle-tone signal from the ideal to 1.80. Thus, accurate identificationof single-tone signals in real telephone systems requires extension ofthe single-tone peak factor range upward toward that of double-tones.

II.C.3. UNEQUAL TONE AMPLITUDES

Transmission of signals through a telephone network with frequencydistortion (frequency response that is not flat) can result in the twotones of a double-tone signal being received at unequal amplitude. Thistends to lower the peak factor of double-tone signals.

Although the tones of a double-tone signal are nominally equal inamplitude, in typical systems they can be expected to differ by as muchas 8 dB (a ratio of tone amplitudes of about 2.5). This results in achange in the RMS peak factor from the ideal of 2.0 to 1.84. Thus, inorder to operate in the presence of frequency distortion it is necessaryto lower the bottom end of the peak factor range for double-tonesignals. Fortunately, the presence of noise tends to correct, ratherthan exacerbate the change caused by frequency distortion. For example,-25 dB noise increases the peak factor from 1.84 (for unequal toneamplitudes) to 2.06 (for unequal tone amplitudes and additive noise).

II.D. MEASUREMENT INTERVAL

The measurement interval used in the above-described illustrativeembodiment is about 37 msec., which is achieved by performing peakfactor determinations on blocks of 256 samples in a system with asampling rate of 7000 samples per second. This has been found to beadequate and its adequacy is consistent with the following theoreticalanalysis.

Theoretical analysis shows that the minimum time required to accuratelymeasure peak factor for various signals is approximately as follows:

speech: 30 msec.

dial tone: 11 msec.

audible ring: 25 msec.

busy and fast busy: 7 msec.

SSIT: 2 msec.

To obtain a reasonably accurate measure of the peak factor of a voicedspeech signal, at least one pitch period and preferably two pitchperiods should be included in the measurement interval. Pitch periodsrange generally from about 3 msec (for high pitched female voices) toabout 14 msec (for low pitched male voices). A 28 msec interval wouldencompass two pitch periods in the worst case.

For unvoiced speech, the analysis is more difficult. At 7000samples/second, about half of the samples will be independent. Thusabout 128 independent samples are available in a 37 msec interval of 256samples. This number is sufficient to obtain a statistically significantmeasurement for unvoiced speech.

A double-tone waveform can be viewed as a sinusoidal waveform (at afrequency equal to half the sum of the frequencies of the two tones)modulated by another sinusoid (at a frequency equal to half thedifference between the frequencies of the two tones); the resultingamplitude envelope of the basic sinusoid has a frequency equal to thedifference between the two tones. For a reasonable measurement of peakfactor of such a signal it is desirable to include in the measurementinterval at least one period of the envelope. In the United States, adial tone typically consists of the sum of a 350 Hz tone and a 440 Hztone; the period of the resulting amplitude envelope is about 11milliseconds. Audible ring is typically the combination of a 440 Hz toneand a 480 Hz tone, i.e., a 25 millisecond envelope period. Busy and fastbusy are both the combination of a 480 Hz tone and a 620 Hz tone, i.e.,a 7 millisecond envelope period.

SSITs are sequences of three single tones each of which has a frequencythat is high enough to permit measurement of peak factor in less thanthe 7 milliseconds required for busy.

II.E. AVERAGE MAGNITUDE RATHER THAN RMS

RMS is one of the most widely used measures of the signal level of awaveform. One of its desirable characteristics is that theoreticalanalysis using RMS involves more tractable mathematical expressions thandoes analysis using some other measures of signal level. One of thedisadvantages of RMS is that when used with digital signal processingsystems, it is computationally intensive because a multiply is requiredfor each sample.

Another measure of signal level is average magnitude. Average magnitudeis easily computed in a digital signal processing system, and for thisreason is chosen as the signal-level measure for the above-describedillustrative embodiment.

II E.1. RELATION BETWEEN AVM AND RMS

For most actually encountered waveforms, average magnitude is roughlyproportional to RMS, that is

    RMS/AVM=C

where C varies somewhat from signal-type to signal-type, but isessentially constant for each signal-type.

As

    PF.sub.avm =PEAK/AVM

    PF.sub.rms =PEAK/RMS

thus

    PF.sub.avm/PF.sub.rms =RMS/AVM=C

and

    PF.sub.avm =PF.sub.rms *(RMS/AVM)=PF.sub.rms *C

For single-tone signals,

    RMS/AVM=PI*SQRT(2)/4

which is about 1.11.

For double-tone signals, RMS/AVM is approximately

    (PI.sup.2)/8

which is about 1.23.

For speech, measurement of a large number of signals indicates thatRMS/AVM is roughly in the range 1.2 to 1.4. Theoretical analysis ofvoiced speech (based on a Laplacian density-amplitude function)indicates that RMS/AVM is about

    SQRT(2)

which is about 1.41, and theoretical analysis of unvoiced speech (basedon a Gaussian density-amplitude function) indicated that RMS/AVM isabout

    1/SQRT(2/PI)

which is about 1.25.

II.E.2. AVM PEAK FACTOR RANGES CONSIDERING ADDITIVE NOISE

An analysis of the effect of additive noise similar to that discussedabove in the context of RMS-based peak factor can be applied to peakfactor based on average magnitude. The result is the following range:

    C*PF.sub.irms PF.sub.avm C*(PF.sub.irms +B*NSR)/(1+C*SQRT(2/PI)*NSR)

where C is a constant for each signal type (C=RMS/AVM for the particulartype of signal being considered). Thus, the ranges for PF_(avm) areessentially the ranges for PF_(rms) scaled by RMS/AVM.

The specific numeric values indicated by the theoretical foraverage-magnitude-based peak factor considering additive noise are asfollows (using NSR=0.056 and B=4 in the above equation):

    ______________________________________                                        1.57          PF.sub.avm (1T)                                                                         1.73                                                  2.47          PF.sub.avm (2T)                                                                         2.60                                                  4.39          PF.sub.avm (SP)                                                                         16.26                                                 ______________________________________                                    

As discussed above, the theoretical analysis yields different RMS/AVMvalues for voiced and unvoiced speech; the single range for speech inthe above table is produced by using the smaller RMS/AVM value tocompute the lower bound, and by using the larger RMS/AVM value for theupper bound, to yield a range encompassing all speech.

The foregoing description has been limited to a specific embodiment ofthe invention. Additional advantages and modifications will be apparentto those skilled in the art. The invention is, therefore, not limited tothe specific details, representative apparatus, and illustrative exampleshown and described in this specification. Rather, it is the object ofthe appended claims to cover all such variations and modifications ascome within the true spirit and scope of the invention.

What is claimed as new and desired to be secured by Letters Patent ofthe United States is:
 1. A call progress analyzer comprising:means forreceiving waveforms from a telephone line; means defining a peak factorrange, said range being associated with a particular signal type;measuring means for determining whether peak factors of waveformsreceived from the telephone line fall within said range and forproviding a signal-type indication of said particular signal type inresponse to a determination that a peak factor falls within said range;call status decision logic for receiving said signal-type indication andfor determining call status.
 2. The system as claimed in claim 1,wherein said measuring means further comprises:means for creatingdigital samples representing a waveform received from the telephoneline; means for defining measurement intervals and for associating ablock of samples with each of the measurement intervals; means fordetermining the peak sample value in a measurement interval; means formaking a determination of the signal level of the samples in ameasurement interval.
 3. The system as claimed in claim 2, wherein saidmeasuring means further comprises:means for comparing thepeak-to-signal-level ratio to the peak factor ranges byscaling thesignal level determination by values indicative of the ranges; andcomparing the peak determination with the scaled signal leveldeterminations.
 4. The system as claimed in claim 2, wherein the signallevel determining means comprises means for computing the sum of themagnitudes of the samples in the interval.
 5. The system claimed inclaim 4 wherein the peak factor range for single-tone signals is lessthan about 2, the range for double-tone signals is between about 2 andabout 3, and the range for speech signals is above about
 3. 6. Thesystem as claimed in claim 2, wherein the signal level determining meanscomprises means for computing the sum of the squares of the samples inthe interval.
 7. The call progress analyzer of claim 1 furthercomprising:means defining a second peak factor range, said second rangebeing associated with a second signal type; means for determiningwhether peak factors of waveforms received from the telephone line fallwithin said second range and for providing a signal-type indication ofthe second signal type in response to a determination that a peak factorfalls within said second range; and wherein said call status decisionlogic is also adapted to receive the signal-type indication of thesecond type.
 8. The call progress analyzer claimed in claim 7, furthercomprising:means for defining a signal-level threshold; means fordetermining when the signal level of the waveform exceeds the definedthreshold; timing means for determining the durations of intervalsduring which the waveform signal level exceeds the threshold, and fordetermining the durations of the intervals during which the waveform isless than the threshold; and wherein said call status decision logic isalso adapted to receive the interval duration determinations.
 9. Thesystem as claimed in claim 8, wherein said measuring means furthercomprises:means for creating digital samples representing a waveformreceived from the telephone line; means for defining measurementintervals and for associating a block of samples with each of themeasurement intervals; means for determining the peak sample value in ameasurement interval; means for making a determination of the signallevel of the samples in a measurement interval.
 10. The system asclaimed in claim 9, wherein the signal level determining means comprisesmeans for computing the sum of the magnitudes of the samples in theinterval.
 11. An automatic call delivery system for connection to atelephone line comprising:means for initiating a telephone call,including means for placing the telephone line in an off-hook conditionand means for dialing a telephone number; means for defining at leastfirst and second peak factor ranges, said ranges being associated withfirst and second signal types, respectively; peak factor determinationmeans for determining whether peak factors of waveforms received fromthe telephone line fall within either of said ranges and for providing asignal-type indication of the associated signal type in response to adetermination that a peak factor falls within one of said ranges;delivery indication means for receiving said signal-type indications andfor indicating that a call has been answered.
 12. The automatic calldelivery system as claimed in claim 11, wherein said peak factordetermination means comprises:means for receiving a waveform and forcreating a series of digital samples representing the waveform; meansdefining measurement intervals and for associating samples with themeasurement intervals; peak measurement means for determining the peaksample value for each measurement interval; signal level measurementmeans for making a signal level determination for each measurementinterval; means for defining a peak factor range characteristic ofsignals of the first type and for defining a peak factor rangecharacteristic of signals of the second type; scaling means for scalingthe signal level determination according to scale factors characteristicof peak factor ranges; means for comparing the determined peak valuewith the scaled forms of signal level and for producing signal-typedeterminations.
 13. The automatic call delivery system as claimed inclaim 12 wherein the signal level measuring means comprises means forcomputing the sum of the magnitudes of the samples in the interval. 14.The automatic call delivery system as claimed in claim 12, furthercomprising:means for defining a signal-level threshold; means fordetermining when the signal level of the waveform exceeds the definedthreshold; timing means for determining the durations of intervalsduring which the waveform signal level exceeds the threshold, and fordetermining the durations of the intervals during which the waveform isless than the threshold; and wherein said delivery indication means isalso adapted to receive the interval duration determinations.
 15. Theautomatic call delivery system as claimed in claim 11, wherein saidmeans for defining ranges further comprises means for defining a thirdpeak factor range associated with a third signal type, and wherein thefirst signal type is single-tone signals, the second signal type isdouble-tone signals, and the third signal type is speech.
 16. A systemfor discriminating between the presence in a waveform of signals of afirst type and signals of other types comprising:means defining a peakfactor range associated with signals of the first type; measuring means,adapted to receive a representation of the waveform, for making at leastone determination of peak factor of the waveform; indicating means,responsive to the measuring means and to the range defining means, forindicating the presence of a signal of the first type when thedetermined peak factor is within the defined range.
 17. The system asclaimed in claim 16,wherein said measuring means is adapted to receiverepresentations of waveforms received from a telephone system by acaller attempting to place a call; and further comprising call statusdetermination logic for receiving signal presence determinations fromthe indicating means and for determining the status of the call.
 18. Asystem for discriminating between the presence in a waveform ofspeech-type signals and signals of other types comprising:means defininga peak factor range associated with speech-type signals; measuringmeans, adapted to receive a representation of the waveform, for makingat least one determination of peak factor of the waveform; indicatingmeans, responsive to the measuring means and to the range definingmeans, for indicating the presence of a speech-type signal when thedetermined peak factor is within the defined range.
 19. The system asclaimed in claim 18,wherein said measuring means is adapted to receiverepresentations of waveforms received from a telephone system by acaller attempting to place a call; and further comprising call statusdetermination logic for receiving signal presence determinations fromthe indicating means and for determining the status of the call.
 20. Asystem for discriminating between the presence in a waveform ofspeech-type signals and tone-type signals comprising:means defining afirst peak factor range associated with speech-type signals and defininga second peak factor range associated with tone-type signals; measuringmeans, adapted to receive a representation of the waveform, for makingat least one determination of peak factor of the waveform; indicatingmeans, responsive to the measuring means and to the range definingmeans, for indicating the presence of a speech-type signal when thedetermined peak factor is within the first defined range and indicatingthe presence of a tone-type signal when the peak factor is within thesecond defined range.
 21. The system as claimed in claim 20,wherein saidmeasuring means is adapted to receive representations of waveformsreceived from a telephone system by a caller attempting to place a call;and further comprising call status determination logic for receivingsignal presence determinations from the indicating means and fordetermining the status of the call.
 22. A system for discriminatingbetween the presence in a waveform of single-tone signals anddouble-tone signals comprising:means defining a first peak factor rangeassociated with single-tone signals and defining a second peak factorrange associated with tone-type signals; measuring means, adapted toreceive a representation of the waveform, for making at least onedetermination of peak factor of the waveform; indicating means,responsive to the measuring means and to the range defining means, forindicating the presence of a speech-type signal when the determined peakfactor is within the first defined range and indicating the presence ofa tone-type signal when the peak factor is within the second definedrange.
 23. The system as claimed in claim 22,wherein said measuringmeans is adapted to receive representations of waveforms received from atelephone system by a caller attempting to place a call; and furthercomprising call status determination logic for receiving signal presencedeterminations from the indicating means and for determining the statusof the call.
 24. A system for discriminating among the presence in awaveform of speech siganls, double-tone signals, and single-tone signalscomprising:means defining, a first peak factor range associated withspeech signals, defining a second peak factor range associated withdouble-tone signals, and defining a third peak factor range associatedwith single-tone singals: measuring means, adapted to receive arepresentation of the waveform, for making at least one determination ofpeak factor of the waveform; indicating means, responsive to themeasuring means and to the range defining means, for indicating thepresence of a speech signal when the determined peak factor is withinthe first defined range, indicating the presence of a double-tone signalwhen the peak factor is within the second defined range, and indicatingthe presence of a single-tone signal when the peak factor is within thethird defined range.
 25. The system as claimed in claim 24,wherein saidmeasuring means is adapted to receive representations of waveformsreceived from a telephone system by a caller attempting to place a call;and further comprising call status determination logic for receivingsignal presence determinations from the indicating means and fordetermining the status of the call.
 26. The system claimed in claim 24wherein the peak factor range for single-tone signals is less than about2, the range for double-tone signals is between about 2 and about 3, andthe range for speech signals is above about
 3. 27. A system fordiscriminating between the presence in a waveform of signals of a firsttype and signals of a second type comprising:means for receiving awaveform and for creating a series of digital samples representing thewaveform; means defining measurement intervals and for associatingsamples with the measurement intervals; peak measurement means fordetermining the peak sample value for each measurement interval; signallevel measurement means for making a signal level determination for eachmeasurement interval; means for defining a peak factor rangecharacteristic of signals of the first type and for defining a peakfactor range characteristic of signals of the second type; scaling meansfor scaling the signal level determination according to scale factorscharacteristic of peak factor ranges; means for comparing the determinedpeak value with the scaled forms of signal level and for producingsignal-type determinations.
 28. The system as claimed in claim 27wherein the signal level measuring means comprises means for computingthe sum of the magnitudes of the samples in the interval.
 29. The systemas claimed in claim 27, further comprising:a single-tone counter, adouble-tone counter, and a speech counter, each counter arranged toincrement upon the determination of the associated signal type for ameasurement interval; decision logic means for determining the signaltype for each ON interval by choosing the signal type corresponding tothe counter with the largest count at the end of the ON interval. 30.The system as claimed in claim 29, further comprising:reset means forresetting at least one of the counters when at least one of the othercounters reaches a predetermined count.
 31. The system as claimed inclaim 29, wherein the waveform is from a telephone system, and furthercomprising:call status determination logic for receiving signal-typedeterminations from the decision logic means and making call statusdeterminations.
 32. A method of determining the progress of a callcomprising:receiving waveforms from a telephone line; making peak factormeasurements of the received waveforms; determining call status usingthe peak factor measurements.
 33. The method of claim 32 furthercomprising the initial step of defining a peak factor range, andfurther, wherein the step of determining call status comprises the stepof determining whether a peak factor measurement falls within the range.34. A method for discriminating between the presence in a waveform ofsignals of a first type and signals of other types comprising:defining apeak factor range associated with signals of the first type; receiving arepresentation of the waveform; making a determination of peak factor ofthe waveform; indicating the presence of a signal of the first type whenthe determined peak factor is within the defined range.
 35. The methodof claim 34 wherein the signals of the first type are speech-typesignals.
 36. A method for discriminating between the presence in awaveform of signals of a first type and signals of a second typecomprising:defining first and second peak factor ranges associated withsignals of the first type and signals of the second type, respectively;receiving a representation of the waveform; making a determination ofpeak factor of the waveform; indicating the presence of a signal of thefirst type when the determined peak factor is within the first range andindicating the presence of a signal of the second type when the peakfactor is within the second range.
 37. The method of claim 36 whereinthe signal of the first type are speech-type signals and wherein thesignals of the second type are tone-type signals.
 38. The method ofclaim 36 wherein the signals of the first type are single-tone-typesignals and wherein the signals of the second type are double-tone-typesignals.
 39. A method for discriminating among the presence in awaveform of speech-type signals, single-tone-signals, anddouble-tone-type signals comprising:defining first, second, and thirdpeak factor ranges associated with speech-type, single-tone-type, anddouble-tone-type tone-type signals, respectively; receiving arepresentation of the waveform; making a determination of peak factor ofthe waveform; indicating the presence of a speech-type signal when thedetermined peack factor is within the first range, indicating thepresence of a single-tone-type signal when the peak factor is within thesecond range, and indicating the presence of a double-tone-type signalwhen the peak factor is within the third range.
 40. A method fordiscriminating between the presence in a waveform of signals of a firsttype and signals of a second type comprising:defining first and secondpeak factor ranges associated with signals of the first type and signalsof the second type, respectively; creating a series of digital samplesrepresenting an interval of the waveform; determining the peak samplevalue for the interval; making a signal level determination for theinterval; comparing the peak factor of the interval with the peak factorranges.
 41. The method of claim 40 wherein the step of comparing thepeak factor with the peak factor ranges comprises:scaling the signallevel determination according to scale factors characteristic of thepeak factor ranges; comparing the determined peak value with the scaledforms of signal level.